import common from "../../../utils/common.js";
const app = getApp()
Page({

    /**
     * 页面的初始数据
     */
    data: {
        // 获取导航栏信息
        // 导航栏的高度 = 状态栏高度 + 胶囊高度 +（胶囊top - 状态栏高度）* 2 
        dhlTop: app.globalData.dhlTop,
        dhlHeight: app.globalData.dhlHeight,
        windowHeight: app.globalData.windowHeight,

        // 所有标签
        labelData: [
            // {
            //     type: 6,
            //     title: '装修情况',
            //     optionArr: [
            //         { check: false, text: '毛坯', value: '1' },
            //         { check: false, text: '简单装修', value: '6-2' },
            //         { check: false, text: '精装修', value: '6-3' },
            //         { check: false, text: '豪华装修', value: '6-4' }]
            // },
            {
                type: 7,
                title: '房屋亮点',
                optionArr: [
                    { check: false, text: '精装修', value: 0 },
                    { check: false, text: '智能家居', value: 1 },
                    { check: false, text: '房东直租', value: 2 },
                    { check: false, text: '民用水电', value: 3 },
                    { check: false, text: '有电梯', value: 4 },
                    { check: false, text: '双气', value: 5 },
                    { check: false, text: '可做饭', value: 6 },
                    { check: false, text: '可短租', value: 7 },
                    { check: false, text: '可养宠物', value: 8 },
                    { check: false, text: '带车位', value: 9 },
                    { check: false, text: '无中介费', value: 10 },
                ]
            },
            {
                type: 8,
                title: '房屋配置',
                optionArr: [
                    { check: false, text: '冰箱', value: 0 },
                    { check: false, text: '电视', value: 1 },
                    { check: false, text: '洗衣机', value: 2 },
                    { check: false, text: '热水器', value: 3 },
                    { check: false, text: '空调', value: 4 },
                    { check: false, text: '宽带', value: 5 },
                    { check: false, text: '投影', value: 6 },
                    { check: false, text: '床', value: 7 },
                    { check: false, text: '暖气', value: 8 },
                    { check: false, text: '智能门锁', value: 9 },
                    { check: false, text: '油烟机', value: 10 },
                    { check: false, text: '燃气灶', value: 11 },
                ]
            },
        ],
        allSelectLabelArr: [],
        // zxSelectLabelArr: [], //装修
        ldSelectLabelArr: [], //房屋亮点
        ldSelectLabelValArr: [], //房屋亮点
        pzSelectLabelArr: [], //房屋配置
        pzSelectLabelValArr: [], //房屋配置
        // yqSelectLabelArr: [], //出租要求
        // dtSelectLabelArr: [], //是否有电梯
    },

    /**
 * 点击每个选项事件
 * @param {选项} params 
 */
    labelClick: function (e) {
        // var tempArr = this.data.allSelectLabelArr;
        console.info('e=' + JSON.stringify(e))
        const type = e.currentTarget.dataset.type
        const subItem = e.currentTarget.dataset.item
        // const type = subItem.value.substring(0, subItem.value.indexOf('-'))
        console.info('valStartSub=' + type)
        var checkFlag = subItem.check;

        // 
        console.info('wx.getStorageSync(tempLabelData)=' + JSON.stringify(wx.getStorageSync('tempLabelData')))
        var tempLabelData = wx.getStorageSync('tempLabelData').length > 0 ? wx.getStorageSync('tempLabelData') : this.data.labelData;
        console.info('点击事件后，之前保存的tempLabelData=' + JSON.stringify(tempLabelData))


        // 多选点击
        if (type === 7) {
            common.multiGroupClickVal(this.data.ldSelectLabelArr, this.data.ldSelectLabelValArr, tempLabelData[0].optionArr, checkFlag, subItem.value)
            wx.setStorageSync('ldSelectLabelArr', this.data.ldSelectLabelArr)
            wx.setStorageSync('ldSelectLabelValArr', this.data.ldSelectLabelValArr)
            // this.setAllSelectLabelArr(this.data.ldSelectLabelArr)
        } else if (type === 8) {
            common.multiGroupClickVal(this.data.pzSelectLabelArr, this.data.pzSelectLabelValArr, tempLabelData[1].optionArr, checkFlag, subItem.value)
            wx.setStorageSync('pzSelectLabelArr', this.data.pzSelectLabelArr)
            wx.setStorageSync('pzSelectLabelValArr', this.data.pzSelectLabelValArr)
            // this.setAllSelectLabelArr(this.data.pzSelectLabelArr)
        }

        this.setData({
            labelData: tempLabelData
        })
        console.info('选中赋值后tempLabelData=' + JSON.stringify(tempLabelData))
        wx.setStorageSync('tempLabelData', tempLabelData)

        // this.setAllSelectLabelArr(this.data.zxSelectLabelArr)
        // this.setAllSelectLabelArr(this.data.dtSelectLabelArr)
        // this.setAllSelectLabelArr(this.data.ldSelectLabelArr)
        // this.setAllSelectLabelArr(this.data.pzSelectLabelArr)
        // this.setAllSelectLabelArr(this.data.yqSelectLabelArr)
        this.data.allSelectLabelArr.length = 0
        // this.setAllSelectLabelArr(wx.getStorageSync('zxSelectLabelArr'))
        this.setAllSelectLabelArr(wx.getStorageSync('ldSelectLabelArr'))
        this.setAllSelectLabelArr(wx.getStorageSync('pzSelectLabelArr'))
        // this.setAllSelectLabelArr(wx.getStorageSync('yqSelectLabelArr'))
        // this.setAllSelectLabelArr(wx.getStorageSync('dtSelectLabelArr'))
        wx.setStorageSync('allSelectLabelArr', this.data.allSelectLabelArr)

        console.info('allSelectLabelArr=' + JSON.stringify(this.data.allSelectLabelArr))
    },


    /**
     * 把各个组的选中项统一放进结果集合
     * @param {选中项的集合} selectLabelArr 
     */
    setAllSelectLabelArr: function (selectLabelArr) {
        for (let i = 0; i < selectLabelArr.length; i++) {
            this.data.allSelectLabelArr.push(selectLabelArr[i])
        }
    },

    /**
     * 点击确定按钮
     * @param {e} params 
     */
    entryClick: function (params) {
        var tempAllSelectLabelArr = wx.getStorageSync('allSelectLabelArr')
        var pages = getCurrentPages();             //  获取页面栈
        var currPage = pages[pages.length - 1];    // 当前页面
        var prevPage = pages[pages.length - 2];    // 上一个页面
        // 每个标签行高度约为 40
        const totalItem = tempAllSelectLabelArr.length + 1;
        const yuNum = totalItem % 3 == 0 ? 0 : 1
        const addNum = yuNum == 0 ? 45 : 40;
        var everyLabelHeight = (totalItem / 3 + yuNum) * addNum;
        // 标签行外层高度 默认为 150 
        var groundLabelHeight = 150;
        if (everyLabelHeight < 100) {
            // 默认最低高度为 100
            everyLabelHeight = 100
        } else {
            groundLabelHeight = everyLabelHeight + 52
        }
        prevPage.setData({
            ldSelectLabelValArr: wx.getStorageSync('ldSelectLabelValArr'),
            pzSelectLabelValArr: wx.getStorageSync('pzSelectLabelValArr'),
            // labelData: this.data.labelData,
            labelArr: tempAllSelectLabelArr,
            labelContentHeight: everyLabelHeight,
            aroundLabelContentHeight: groundLabelHeight,
        })
        this.backR(params)
    },

    /**
     * 返回上一页
     * @param {选项} params 
     */
    backR: function (params) {
        // params={"type":"backR","timeStamp":24194,"target":{"id":"","dataset":{}},"currentTarget":{"id":"","dataset":{}},"mark":{},"detail":{"params":"009009"},"mut":false}
        console.info('params=' + JSON.stringify(params))
        // console.info('prevPage.data=' + JSON.stringify(prevPage.data))
        wx.navigateBack({ delta: 1 })
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        console.info('options=' + JSON.stringify(options))
        const allLabelVOList = JSON.parse(options.allLabelVOList);
        console.info('allLabelVOList=====' + JSON.stringify(allLabelVOList[0]))
        if (allLabelVOList != null && allLabelVOList.length > 0) {
            // 从add页面的编辑详情过来的
            var allSelectLabelArr = [];
            allSelectLabelArr.push(JSON.parse(options.ldSelectLabelValArr));
            allSelectLabelArr.push(JSON.parse(options.pzSelectLabelValArr));
            this.setData({ labelData: allLabelVOList, ldSelectLabelValArr: JSON.parse(options.ldSelectLabelValArr), pzSelectLabelValArr: JSON.parse(options.pzSelectLabelValArr), allSelectLabelArr: allSelectLabelArr})

            wx.setStorageSync('tempLabelData', allLabelVOList)
            wx.setStorageSync('allSelectLabelArr', this.data.allSelectLabelArr)
        } else {
            // 如果是add页面第一次打开标签页，缓存是空的，不做任何处理，选过后点击确定，再进来会有缓存值（若从上面返回，则没有缓存，不处理）
            const tempLabelData = wx.getStorageSync('tempLabelData') || []
            console.info('到标签页，之前保存的tempLabelData=' + JSON.stringify(tempLabelData))
            if (tempLabelData.length > 0) {
                this.setData({ labelData: tempLabelData, ldSelectLabelValArr: wx.getStorageSync('ldSelectLabelValArr'), pzSelectLabelValArr: wx.getStorageSync('pzSelectLabelValArr') })
            }
        }
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})